package com.bsoft.gol.hcs.visitrecord.bean.vo;

import javax.xml.bind.annotation.*;
import java.util.List;

/**
 * Created by ChenJij on 2020/12/13.
 */
@XmlRootElement(name = "Data")
public class ExamFormRecordList {
    private Long Total;
    private List<ApplyInfo> ApplyInfoList;

    @XmlElement
    public Long getTotal() {
        return Total;
    }

    public void setTotal(Long total) {
        Total = total;
    }

    @XmlElementWrapper(name = "ApplyInfoList")
    @XmlElement(name = "ApplyInfo")
    public List<ApplyInfo> getApplyInfoList() {
        return ApplyInfoList;
    }

    public void setApplyInfoList(List<ApplyInfo> applyInfoList) {
        ApplyInfoList = applyInfoList;
    }

    public static class ApplyInfo {
        private Patient Patient;
        private Visit Visit;
        private ExamRequest ExamRequest;

        @XmlElement(name = "Patient")
        public ApplyInfo.Patient getPatient() {
            return Patient;
        }

        public void setPatient(ApplyInfo.Patient patient) {
            Patient = patient;
        }

        @XmlElement(name = "Visit")
        public ApplyInfo.Visit getVisit() {
            return Visit;
        }

        public void setVisit(ApplyInfo.Visit visit) {
            Visit = visit;
        }

        @XmlElement(name = "ExamRequest")
        public ApplyInfo.ExamRequest getExamRequest() {
            return ExamRequest;
        }

        public void setExamRequest(ApplyInfo.ExamRequest examRequest) {
            ExamRequest = examRequest;
        }

        public static class Patient {
            private String MPI;
            private String SourcePatientId;
            private String AuthorOrganization;
            private String IdCard;
            private String IdCardCode;
            private String Name;
            private String Sex;
            private String BirthDate;
            private String PatientPhone;
            private String HealthInsuranceCardId;

            @XmlElement(name = "MPI")
            public String getMPI() {
                return MPI;
            }

            public void setMPI(String MPI) {
                this.MPI = MPI;
            }

            @XmlElement(name = "SourcePatientId")
            public String getSourcePatientId() {
                return SourcePatientId;
            }

            public void setSourcePatientId(String sourcePatientId) {
                SourcePatientId = sourcePatientId;
            }

            @XmlElement(name = "AuthorOrganization")
            public String getAuthorOrganization() {
                return AuthorOrganization;
            }

            public void setAuthorOrganization(String authorOrganization) {
                AuthorOrganization = authorOrganization;
            }

            @XmlElement(name = "IdCard")
            public String getIdCard() {
                return IdCard;
            }

            public void setIdCard(String idCard) {
                IdCard = idCard;
            }

            @XmlElement(name = "IdCardCode")
            public String getIdCardCode() {
                return IdCardCode;
            }

            public void setIdCardCode(String idCardCode) {
                IdCardCode = idCardCode;
            }

            @XmlElement(name = "Name")
            public String getName() {
                return Name;
            }

            public void setName(String name) {
                Name = name;
            }

            @XmlElement(name = "Sex")
            public String getSex() {
                return Sex;
            }

            public void setSex(String sex) {
                Sex = sex;
            }

            @XmlElement(name = "BirthDate")
            public String getBirthDate() {
                return BirthDate;
            }

            public void setBirthDate(String birthDate) {
                BirthDate = birthDate;
            }

            @XmlElement(name = "PatientPhone")
            public String getPatientPhone() {
                return PatientPhone;
            }

            public void setPatientPhone(String patientPhone) {
                PatientPhone = patientPhone;
            }

            @XmlElement(name = "HealthInsuranceCardId")
            public String getHealthInsuranceCardId() {
                return HealthInsuranceCardId;
            }

            public void setHealthInsuranceCardId(String healthInsuranceCardId) {
                HealthInsuranceCardId = healthInsuranceCardId;
            }
        }

        public static class Visit {
            private String VisitId;
            private String VisitOrganization;
            private String PatientType;
            private String MedicalCardId;
            private String MedicalCardType;
            private String ClinicId;
            private String HospizationId;
            private String VisitDateTime;
            private String VisitTimes;
            private String DomainID;

            @XmlElement(name = "VisitId")
            public String getVisitId() {
                return VisitId;
            }

            public void setVisitId(String visitId) {
                VisitId = visitId;
            }

            @XmlElement(name = "VisitOrganization")
            public String getVisitOrganization() {
                return VisitOrganization;
            }

            public void setVisitOrganization(String visitOrganization) {
                VisitOrganization = visitOrganization;
            }

            @XmlElement(name = "PatientType")
            public String getPatientType() {
                return PatientType;
            }

            public void setPatientType(String patientType) {
                PatientType = patientType;
            }

            @XmlElement(name = "MedicalCardId")
            public String getMedicalCardId() {
                return MedicalCardId;
            }

            public void setMedicalCardId(String medicalCardId) {
                MedicalCardId = medicalCardId;
            }

            @XmlElement(name = "MedicalCardType")
            public String getMedicalCardType() {
                return MedicalCardType;
            }

            public void setMedicalCardType(String medicalCardType) {
                MedicalCardType = medicalCardType;
            }

            @XmlElement(name = "ClinicId")
            public String getClinicId() {
                return ClinicId;
            }

            public void setClinicId(String clinicId) {
                ClinicId = clinicId;
            }

            @XmlElement(name = "HospizationId")
            public String getHospizationId() {
                return HospizationId;
            }

            public void setHospizationId(String hospizationId) {
                HospizationId = hospizationId;
            }

            @XmlElement(name = "VisitDateTime")
            public String getVisitDateTime() {
                return VisitDateTime;
            }

            public void setVisitDateTime(String visitDateTime) {
                VisitDateTime = visitDateTime;
            }

            @XmlElement(name = "VisitTimes")
            public String getVisitTimes() {
                return VisitTimes;
            }

            public void setVisitTimes(String visitTimes) {
                VisitTimes = visitTimes;
            }

            @XmlElement(name = "DomainID")
            public String getDomainID() {
                return DomainID;
            }

            public void setDomainID(String domainID) {
                DomainID = domainID;
            }
        }

        //        @XmlAccessorType(XmlAccessType.FIELD)
        public static class ExamRequest {
            private String RequestId;
            private String ExamTypeCode;
            private String ExamTypeName;
            private String Age;
            private String Address;
            private String SickRoomId;
            private String Dept;
            private String DeptName;
            private String WardArea;
            private String WardAreaName;
            private String SickbedId;
            private String RequestDateTime;
            private String RequestDoctor;
            private String RequestDoctorName;
            private String RequestDoctorSign;
            private String AuditDoctor;
            private String AuditDoctorName;
            private String RequestDept;
            private String RequestDeptName;
            private String IsEmergency;
            private String ExamExecuteOrg;
            private String ExamExecuteDept;
            private String ExamExecuteDeptName;
            private String ExecuteDateTime;
            private String ExamCost;
            private String ExamPurpose;
            private String ClinicalDiagnose;
            private String ChiefComplaint;
            private String DiseasesHistory;
            private String PhysicalSign;
            private String AnesthesiaAttentionProblem;
            private String ExamExecutePlace;
            private String RequestStartDateTime;
            private String RequestEndDateTime;
            private String AuditDateTime;

            private List<Item> ItemList;

            @XmlElement(name = "IsEmergency")
            public String getIsEmergency() {
                return IsEmergency;
            }

            public void setIsEmergency(String isEmergency) {
                IsEmergency = isEmergency;
            }

            @XmlElement(name = "RequestId")
            public String getRequestId() {
                return RequestId;
            }

            public void setRequestId(String requestId) {
                RequestId = requestId;
            }

            @XmlElement(name = "ExamTypeCode")
            public String getExamTypeCode() {
                return ExamTypeCode;
            }

            public void setExamTypeCode(String examTypeCode) {
                ExamTypeCode = examTypeCode;
            }

            @XmlElement(name = "ExamTypeName")
            public String getExamTypeName() {
                return ExamTypeName;
            }

            public void setExamTypeName(String examTypeName) {
                ExamTypeName = examTypeName;
            }

            @XmlElement(name = "Age")
            public String getAge() {
                return Age;
            }

            public void setAge(String age) {
                Age = age;
            }

            @XmlElement(name = "Address")
            public String getAddress() {
                return Address;
            }

            public void setAddress(String address) {
                Address = address;
            }

            @XmlElement(name = "SickRoomId")
            public String getSickRoomId() {
                return SickRoomId;
            }

            public void setSickRoomId(String sickRoomId) {
                SickRoomId = sickRoomId;
            }

            @XmlElement(name = "Dept")
            public String getDept() {
                return Dept;
            }

            public void setDept(String dept) {
                Dept = dept;
            }

            @XmlElement(name = "DeptName")
            public String getDeptName() {
                return DeptName;
            }

            public void setDeptName(String deptName) {
                DeptName = deptName;
            }

            @XmlElement(name = "WardArea")
            public String getWardArea() {
                return WardArea;
            }

            public void setWardArea(String wardArea) {
                WardArea = wardArea;
            }

            @XmlElement(name = "WardAreaName")
            public String getWardAreaName() {
                return WardAreaName;
            }

            public void setWardAreaName(String wardAreaName) {
                WardAreaName = wardAreaName;
            }

            @XmlElement(name = "SickbedId")
            public String getSickbedId() {
                return SickbedId;
            }

            public void setSickbedId(String sickbedId) {
                SickbedId = sickbedId;
            }

            @XmlElement(name = "RequestDateTime")
            public String getRequestDateTime() {
                return RequestDateTime;
            }

            public void setRequestDateTime(String requestDateTime) {
                RequestDateTime = requestDateTime;
            }

            @XmlElement(name = "RequestDoctor")
            public String getRequestDoctor() {
                return RequestDoctor;
            }

            public void setRequestDoctor(String requestDoctor) {
                RequestDoctor = requestDoctor;
            }

            @XmlElement(name = "RequestDoctorName")
            public String getRequestDoctorName() {
                return RequestDoctorName;
            }

            public void setRequestDoctorName(String requestDoctorName) {
                RequestDoctorName = requestDoctorName;
            }

            @XmlElement(name = "RequestDoctorSign")
            public String getRequestDoctorSign() {
                return RequestDoctorSign;
            }

            public void setRequestDoctorSign(String requestDoctorSign) {
                RequestDoctorSign = requestDoctorSign;
            }

            @XmlElement(name = "AuditDoctor")
            public String getAuditDoctor() {
                return AuditDoctor;
            }

            public void setAuditDoctor(String auditDoctor) {
                AuditDoctor = auditDoctor;
            }

            @XmlElement(name = "AuditDoctorName")
            public String getAuditDoctorName() {
                return AuditDoctorName;
            }

            public void setAuditDoctorName(String auditDoctorName) {
                AuditDoctorName = auditDoctorName;
            }

            @XmlElement(name = "RequestDept")
            public String getRequestDept() {
                return RequestDept;
            }

            public void setRequestDept(String requestDept) {
                RequestDept = requestDept;
            }

            @XmlElement(name = "RequestDeptName")
            public String getRequestDeptName() {
                return RequestDeptName;
            }

            public void setRequestDeptName(String requestDeptName) {
                RequestDeptName = requestDeptName;
            }

            @XmlElement(name = "ExamExecuteOrg")
            public String getExamExecuteOrg() {
                return ExamExecuteOrg;
            }

            public void setExamExecuteOrg(String examExecuteOrg) {
                ExamExecuteOrg = examExecuteOrg;
            }

            @XmlElement(name = "ExamExecuteDept")
            public String getExamExecuteDept() {
                return ExamExecuteDept;
            }

            public void setExamExecuteDept(String examExecuteDept) {
                ExamExecuteDept = examExecuteDept;
            }

            @XmlElement(name = "ExamExecuteDeptName")
            public String getExamExecuteDeptName() {
                return ExamExecuteDeptName;
            }

            public void setExamExecuteDeptName(String examExecuteDeptName) {
                ExamExecuteDeptName = examExecuteDeptName;
            }

            @XmlElement(name = "ExecuteDateTime")
            public String getExecuteDateTime() {
                return ExecuteDateTime;
            }

            public void setExecuteDateTime(String executeDateTime) {
                ExecuteDateTime = executeDateTime;
            }

            @XmlElement(name = "ExamCost")
            public String getExamCost() {
                return ExamCost;
            }

            public void setExamCost(String examCost) {
                ExamCost = examCost;
            }

            @XmlElement(name = "ExamPurpose")
            public String getExamPurpose() {
                return ExamPurpose;
            }

            public void setExamPurpose(String examPurpose) {
                ExamPurpose = examPurpose;
            }

            @XmlElement(name = "ClinicalDiagnose")
            public String getClinicalDiagnose() {
                return ClinicalDiagnose;
            }

            public void setClinicalDiagnose(String clinicalDiagnose) {
                ClinicalDiagnose = clinicalDiagnose;
            }

            @XmlElement(name = "ChiefComplaint")
            public String getChiefComplaint() {
                return ChiefComplaint;
            }

            public void setChiefComplaint(String chiefComplaint) {
                ChiefComplaint = chiefComplaint;
            }

            @XmlElement(name = "DiseasesHistory")
            public String getDiseasesHistory() {
                return DiseasesHistory;
            }

            public void setDiseasesHistory(String diseasesHistory) {
                DiseasesHistory = diseasesHistory;
            }

            @XmlElement(name = "PhysicalSign")
            public String getPhysicalSign() {
                return PhysicalSign;
            }

            public void setPhysicalSign(String physicalSign) {
                PhysicalSign = physicalSign;
            }

            @XmlElement(name = "AnesthesiaAttentionProblem")
            public String getAnesthesiaAttentionProblem() {
                return AnesthesiaAttentionProblem;
            }

            public void setAnesthesiaAttentionProblem(String anesthesiaAttentionProblem) {
                AnesthesiaAttentionProblem = anesthesiaAttentionProblem;
            }

            @XmlElement(name = "ExamExecutePlace")
            public String getExamExecutePlace() {
                return ExamExecutePlace;
            }

            public void setExamExecutePlace(String examExecutePlace) {
                ExamExecutePlace = examExecutePlace;
            }

            @XmlElement(name = "RequestStartDateTime")
            public String getRequestStartDateTime() {
                return RequestStartDateTime;
            }

            public void setRequestStartDateTime(String requestStartDateTime) {
                RequestStartDateTime = requestStartDateTime;
            }

            @XmlElement(name = "RequestEndDateTime")
            public String getRequestEndDateTime() {
                return RequestEndDateTime;
            }

            public void setRequestEndDateTime(String requestEndDateTime) {
                RequestEndDateTime = requestEndDateTime;
            }

            @XmlElement(name = "AuditDateTime")
            public String getAuditDateTime() {
                return AuditDateTime;
            }

            public void setAuditDateTime(String auditDateTime) {
                AuditDateTime = auditDateTime;
            }

            @XmlElementWrapper(name = "ItemList")
            @XmlElement(name = "Item")
            public List<Item> getItemList() {
                return ItemList;
            }

            public void setItemList(List<Item> itemList) {
                ItemList = itemList;
            }

            public static class Item {
                private String ItemCode;
                private String ItemName;
                private String ExamPartsText;
                private String ExamMethodCode;
                private String ExamMethod;
                private String ItemStatus;
                private String ItemCost;
                private String FeeStatus;
                private String ExamTypeCode;
                private String ExamTypeName;
                private String InvoiceNo;
                private String AppointsDept;
                private String AppointsDeptName;
                private String IsAppointment;
                private PartsList PartsList;

                @XmlElement(name = "PartsList")
                public PartsList getPartsList() {
                    return PartsList;
                }

                public void setPartsList(PartsList partsList) {
                    PartsList = partsList;
                }

                @XmlElement(name = "ExamPartsText")
                public String getExamPartsText() {
                    return ExamPartsText;
                }

                public void setExamPartsText(String examPartsText) {
                    ExamPartsText = examPartsText;
                }
                @XmlElement(name = "ExamMethodCode")
                public String getExamMethodCode() {
                    return ExamMethodCode;
                }

                public void setExamMethodCode(String examMethodCode) {
                    ExamMethodCode = examMethodCode;
                }
                @XmlElement(name = "ExamMethod")
                public String getExamMethod() {
                    return ExamMethod;
                }

                public void setExamMethod(String examMethod) {
                    ExamMethod = examMethod;
                }
                @XmlElement(name = "ItemStatus")
                public String getItemStatus() {
                    return ItemStatus;
                }

                public void setItemStatus(String itemStatus) {
                    ItemStatus = itemStatus;
                }
                @XmlElement(name = "ItemCost")
                public String getItemCost() {
                    return ItemCost;
                }

                public void setItemCost(String itemCost) {
                    ItemCost = itemCost;
                }
                @XmlElement(name = "FeeStatus")
                public String getFeeStatus() {
                    return FeeStatus;
                }

                public void setFeeStatus(String feeStatus) {
                    FeeStatus = feeStatus;
                }
                @XmlElement(name = "ExamTypeCode")
                public String getExamTypeCode() {
                    return ExamTypeCode;
                }

                public void setExamTypeCode(String examTypeCode) {
                    ExamTypeCode = examTypeCode;
                }
                @XmlElement(name = "ExamTypeName")
                public String getExamTypeName() {
                    return ExamTypeName;
                }

                public void setExamTypeName(String examTypeName) {
                    ExamTypeName = examTypeName;
                }

                @XmlElement(name = "ItemCode")
                public String getItemCode() {
                    return ItemCode;
                }

                public void setItemCode(String itemCode) {
                    ItemCode = itemCode;
                }

                @XmlElement(name = "ItemName")
                public String getItemName() {
                    return ItemName;
                }

                public void setItemName(String itemName) {
                    ItemName = itemName;
                }

                @XmlElement(name = "InvoiceNo")
                public String getInvoiceNo() {
                    return InvoiceNo;
                }

                public void setInvoiceNo(String invoiceNo) {
                    InvoiceNo = invoiceNo;
                }

                @XmlElement(name = "AppointsDept")
                public String getAppointsDept() {
                    return AppointsDept;
                }

                public void setAppointsDept(String appointsDept) {
                    AppointsDept = appointsDept;
                }

                @XmlElement(name = "AppointsDeptName")
                public String getAppointsDeptName() {
                    return AppointsDeptName;
                }

                public void setAppointsDeptName(String appointsDeptName) {
                    AppointsDeptName = appointsDeptName;
                }

                @XmlElement(name = "IsAppointment")
                public String getIsAppointment() {
                    return IsAppointment;
                }

                public void setIsAppointment(String isAppointment) {
                    IsAppointment = isAppointment;
                }

                @XmlRootElement(name = "PartsList")
                @XmlAccessorType(XmlAccessType.FIELD)
                public static class PartsList{
                    private List<Parts> Parts;

                    public List<Parts> getParts() {
                        return Parts;
                    }

                    public void setParts(List<Parts> parts) {
                        Parts = parts;
                    }
                }
            }
        }
    }
}